//#ifndef FILE_H_
//#define FILE_H_
//
//
//#ifdef __cplusplus
//extern "C" {
//#endif
//
//#include <lfs.h>
//#include <buffer.h>
//#include <list.h>
//
///**
// * Complete File
// */
//typedef struct {
//	char filename[NAMESPACE_LEN];
//	int32_t num;
//	int64_t start_timestamp;
//	int64_t end_timestamp;
//	int32_t size;
//	char* data;
//} File;
//
//typedef struct {
//	char filename[NAMESPACE_LEN];
//	int32_t size;
//	int32_t num;
//	List* sfile_info_list;
//} FileInfo;
//
///**
// * Segment File
// */
//typedef struct {
//	char filename[NAMESPACE_LEN];//include real filename and path
//	int64_t timestamp;
//	int32_t size;
//	void* data;
//} SFile;
//
///**
// * Segment FileInfo
// */
//typedef struct {
//	char filename[NAMESPACE_LEN];
//	int64_t timestamp;
//	int32_t size;
//} SFileInfo;
//
//SFile* sfile_init();
//
//SFile* sfile_create(const char* filename, char* data, int32_t size, int64_t timstamp);
//
//void sfile_flush(FILE* fp, SFile* file);
//
//SFile* sfile_load(FILE* fp);
//
//SFile* sfile_load_not_data(FILE* fp);
//
//void sfile_to_buffer(SFile* file,Buffer* buf);
//
//void buffer_to_sfile(Buffer* buf,SFile* file);
//
//Buffer* sfile_info_list_to_buffer(Buffer* buf,List* sfile_info_list);
//
//List* buffer_to_sfile_info_list(Buffer* buf);
//
//void sfile_destory(void* obj);
//
//void sfile_destory_void(void* file);
//
//void* sfile_destory_not_data(SFile* file);
//
//void buffer_to_sfile_list(Buffer* buf,List* list);
//
//Buffer* sfile_list_to_buffer(Buffer* buf,List* sfile_list);
//
//int read_file(const char* filename,int32_t size,int offset,char* dest,pthread_rwlock_t lock);
//
//int write_file(const char* filename,int32_t size,int offset,char* src,pthread_rwlock_t lock);
//
//#ifdef __cplusplus
//}
//#endif
//
//#endif /* FILE_H_ */
